package user_reference_impl

import (
	"context"
	"nexus/dto"
	"nexus/internal/types"
)

type UserReference interface {
	CreateUser(ctx context.Context, req *types.CreateUserReq) (*dto.User, error)
	Login(ctx context.Context, req *types.LoginReq) (*dto.User, error)
	UserList(ctx context.Context, req *types.UserListReq) ([]*dto.User, error)
	UserDetail(ctx context.Context) (*dto.User, error)
	UserUpdate(ctx context.Context, req *types.UserUpdateReq) (*dto.User, error)
	TenantUserList(ctx context.Context, req *types.TenantUserListReq) ([]*dto.TenantUserList, error)
}
